1. Field of the Invention
The present invention relates to layer 2 switching of data packets in a non-blocking network switch configured for switching data packets between subnetworks.
2. Background Art
Local area networks use a network cable or other media to link stations on the network. Each local area network architecture uses a media access control (MAC) enabling network interface devices at each network node to access the network medium.
The Ethernet protocol IEEE 802.3 has evolved to specify a half-duplex media access mechanism and a full-duplex media access mechanism for transmission of data packets. The full-duplex media access mechanism provides a two-way, point-to-point communication link between two network elements, for example between a network node and a switched hub.
Switched local area networks are encountering increasing demands for higher speed connectivity, more flexible switching performance, and the ability to accommodate more complex network architectures. For example, commonly-assigned U.S. Pat. No. 5,953,335 discloses a network switch configured for switching layer 2 type Ethernet (IEEE 802.3) data packets between different network nodes; a received data packet may include a VLAN (virtual LAN) tagged frame according to IEEE 802.1d protocol that enables the network switch to perform more advanced switching operations. For example, the VLAN tag may specify another subnetwork (via a router) or a prescribed group of stations.
Flow control has been proposed to reduce network congestion in a network switch, where a sending station temporarily suspends transmission of data packets. For example, commonly-assigned, U.S. Pat. Nos. 5,673,254, 5,859,837 and 5,905,870 disclose arrangements for initiating and maintaining flow control in shared-medium, full-duplex, and switched IEEE 802.3 networks by generation of a PAUSE frame in a full-duplex network, or backpressure in a half duplex network. Hence, typical layer 2 flow control involves a layer 2 switch outputting pause commands to all devices connected to the network switch ports when internal switch resources are close to being exhausted.
Efforts to enhance the switching performance of a network switch to include layer 3 (e.g., Internet protocol) processing may suffer serious drawbacks. In particular, the generation of pause frames on all network switch ports adversely affects attempts to maintain advanced switching operations, for example maintaining high priority traffic. Hence, the generation of pause frames may interfere with network nodes attempting to transmit high priority traffic, resulting in a conflict between the necessity for congestion control and the necessity for maintaining reliable transport for high priority traffic.